package com.pi.wms.entity;


import com.fasterxml.jackson.annotation.JsonView;
import com.pi.framework.core.bean.PageResult;
import com.pi.framework.core.bean.ValueText;
import com.pi.framework.core.model.IdVersionableEntity;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;
import org.hibernate.annotations.GenericGenerator;
import org.hibernate.annotations.Parameter;
import org.springframework.data.jpa.datatables.mapping.DataTablesOutput;

import javax.persistence.*;
import java.math.BigDecimal;
import java.util.Date;


@Entity
@NoArgsConstructor
@Getter
@Setter
@Table(name = "VWT_ACT_SHIP_TRANS_LIST")
public class VwtActShipTransList extends IdVersionableEntity{
	private static final long serialVersionUID = -82110242119L;


    @Id
    @GeneratedValue(generator = "SEQ_VWT_SHIP_TRANS_LIST_ID")
    @GenericGenerator(name = "SEQ_VWT_SHIP_TRANS_LIST_ID",strategy = "com.pi.framework.data.FitIdentifierGenerator", parameters = {
            @Parameter(name = "sequence_name", value = "SEQ_VWT_SHIP_TRANS_LIST_ID") })
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class })
    @Column(name = "TRANS_ID")
    private Long id;

    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "GCLIENT_ID")
    private Long globalClientId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "DIVISION_ID")
    private Long divisionId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "CUSTOMER_ID")
    private Long customerId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TRANS_NUMBER")
    private String number;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TRANS_CATEGORY")
    private String category;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TRANS_TYPE")
    private String type;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "MATERIAL_ID")
    private Long materialId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "MATERIAL_CODE")
    private String materialCode;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "MATERIAL_NAME")
    private String materialName;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "MATERIAL_NAME_EN")
    private String materialNameEn;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "DOC_ID")
    private Long docId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "DOC_DETAILS_ID")
    private Long docDetailsId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "DOC_NUMBER")
    private String docNumber;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "DOC_TYPE")
    private String docType;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "DOC_LINENUMBER")
    private String docLinenumber;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "REF_DOC_NUMBER")
    private String refDocNumber;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "REF_DOC_LINENUMBER")
    private String refDocLinenumber;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "WAVE_ID")
    private Long waveId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "WAVE_DETAILS_ID")
    private Long waveDetailsId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TRANS_STATUS")
    private String transStatus;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "BULK_STATUS")
    private String bulkStatus;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "SUPPLIER_ID")
    private Long supplierId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "CARRIER_ID")
    private Long carrierId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "CONSIGNEE_ID")
    private Long consigneeId;

    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_DIVISION_ID")
    private Long toDivisionId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_CUSTOMER_ID")
    private Long toCustomerId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_MATERIAL_ID")
    private Long toMaterialId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "QTY_ORDERED")
    private BigDecimal qtyOrdered;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "QTY_ORDERED_EACH")
    private BigDecimal qtyOrderedEach;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "QTY_TRANS")
    private BigDecimal qtyTrans;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "QTY_TRANS_EACH")
    private BigDecimal qtyTransEach;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_QTY_TRANS")
    private BigDecimal fromQtyTrans;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_QTY_TRANS_EACH")
    private BigDecimal fromQtyTransEach;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_QTY_TRANS")
    private BigDecimal toQtyTrans;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_QTY_TRANS_EACH")
    private BigDecimal toQtyTransEach;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TOTAL_PRICE")
    private BigDecimal totalPrice;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TOTAL_CUBIC")
    private BigDecimal totalCubic;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TOTAL_GROSSWEIGHT")
    private BigDecimal totalGrossweight;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TOTAL_NETWEIGHT")
    private BigDecimal totalNetweight;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "PACK_ID")
    private Long packId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UOM_CODE")
    private String uomCode;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_PACK_ID")
    private Long toPackId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_UOM_CODE")
    private String toUomCode;

    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTNO_ID")
    private Long fromLotnoId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTNO_NUMBER")
    private String fromLotnoNumber;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTNO_ID")
    private Long toLotnoId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTNO_NUMBER")
    private String toLotnoNumber;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOC_ID")
    private Long fromLocId;

    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOC_CODE")
    private String fromLocCode;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOC_ID")
    private Long toLocId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOC_CODE")
    private String toLocCode;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "PLANTO_LOC_ID")
    private Long plantoLocId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "PLANTO_LOC_CODE")
    private String plantoLocCode;
	
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_TRACE_NUMBER")
    private String fromTraceNumber;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_TRACE_NUMBER")
    private String toTraceNumber;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "PLANTO_TRACE_NUMBER")
    private String plantoTraceNumber;

    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_CONTAIN_NUMBER")
    private String fromContainNumber;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_CONTAIN_NUMBER")
    private String toContainNumber;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "PLANTO_CONTAIN_NUMBER")
    private String plantoContainNumber;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "PRINT_STATUS")
    private String printStatus;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "REF_TRANS_ID")
    private Long refTransId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "REF_TASK_ID")
    private Long refTaskId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "REF_TASK_NUMBER")
    private String refTaskNumber;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "REF_TYPE")
    private String refType;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "REF_ID")
    private Long refId;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "BATCH_NUMBER")
    private String batchNumber;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "CALL_NUMBER")
    private String callNumber;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "CALL_SEQ")
    private String callSeq;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "OPEN_TIME")
    private Date openTime;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "CLOSE_TIME")
    private Date closeTime;

    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "ERROR_CODE")
    private String errorCode;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "ERROR_MESSAGES")
    private String errorMessages;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTATTR01")
    private Date fromLotattr01;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTATTR02")
    private Date fromLotattr02;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTATTR03")
    private Date fromLotattr03;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTATTR04")
    private Date fromLotattr04;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTATTR05")
    private String fromLotattr05;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTATTR06")
    private String fromLotattr06;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTATTR07")
    private String fromLotattr07;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTATTR08")
    private String fromLotattr08;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTATTR09")
    private String fromLotattr09;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTATTR10")
    private String fromLotattr10;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTATTR11")
    private String fromLotattr11;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTATTR12")
    private String fromLotattr12;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTATTR13")
    private String fromLotattr13;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTATTR14")
    private String fromLotattr14;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTATTR15")
    private String fromLotattr15;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "FROM_LOTATTR16")
    private String fromLotattr16;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTATTR01")
    private Date toLotattr01;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTATTR02")
    private Date toLotattr02;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTATTR03")
    private Date toLotattr03;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTATTR04")
    private Date toLotattr04;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTATTR05")
    private String toLotattr05;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTATTR06")
    private String toLotattr06;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTATTR07")
    private String toLotattr07;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTATTR08")
    private String toLotattr08;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTATTR09")
    private String toLotattr09;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTATTR10")
    private String toLotattr10;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTATTR11")
    private String toLotattr11;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTATTR12")
    private String toLotattr12;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTATTR13")
    private String toLotattr13;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTATTR14")
    private String toLotattr14;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTATTR15")
    private String toLotattr15;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "TO_LOTATTR16")
    private String toLotattr16;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF01")
    private String udf01;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF02")
    private String udf02;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF03")
    private String udf03;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF04")
    private String udf04;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF05")
    private String udf05;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF06")
    private String udf06;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF07")
    private String udf07;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF08")
    private String udf08;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF09")
    private String udf09;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF10")
    private String udf10;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF11")
    private String udf11;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF12")
    private String udf12;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF13")
    private String udf13;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF14")
    private String udf14;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF15")
    private String udf15;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF16")
    private String udf16;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF17")
    private String udf17;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF18")
    private String udf18;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF19")
    private String udf19;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "UDF20")
    private String udf20;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "EDI_SEND_TIME")
    private Date ediSendTime;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "EDI_SEND_STATUS")
    private String ediSendStatus;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "EDI_RECEIVE_TIME")
    private Date ediReceiveTime;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "EDI_RECEIVE_STATUS")
    private String ediReceiveStatus;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "EDI_RECEIVE_MSG")
    private String ediReceiveMsg;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "DEL_FLAG")
    private Boolean delFlag;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "EDITABLE")
    private Integer editable;
    
    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class }) 
    @Column(name = "NOTES")
    private String notes;

    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class })
    @Column(name = "SO_REF_DOC_NUMBER")
    private String soRefDocNumber;

    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class })
    @Column(name = "REF_ASN_NUMBER")
    private String refAsnNumber;

    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class })
    @Column(name = "PAYMENT_TERMS")
    private String paymentTerms;

    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class })
    @Column(name = "CONSIGNEE_CODE")
    private String consigneeCode;

    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class })
    @Column(name = "CONSIGNEE_NAME")
    private String consigneeName;

    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class })
    @Column(name = "PLAN_LOAD_PLACE")
    private String planLoadPlace;

    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class })
    @Column(name = "PLAN_LOAD_DOOR")
    private String planLoadDoor;

    @JsonView(value = { DataTablesOutput.View.class, PageResult.View.class })
    @Column(name = "delivery_from_place")
    private String deliveryFromPlace;


}
